import { BuffModel } from "./buffModel"

export class FighterSkillModel {
    tid: number
    lvl: number
    starLvl: number
    quality: number
    cd: number
    cdPer: number
    index: number
    aSkills: [number, number][]//辅助技能
    mp: number
    reduceMpPer: number
    addBuff: number
    addDeBuff: number
    hurtPer: number
    scritHurtPer: number
    bossHurtPer: number
    eliteHurtPer: number
    doubleTriggerPer: number
    killMonsterPer: number
    scritRate:number
    buffs: BuffModel[]
    buffStack: number
    boss: boolean
    con: number
    str: number
    will: number
    agile: number
    spirit: number
    constructor(opts: any = {}) {
        this.tid = opts.tid || 0
        this.lvl = opts.lvl || 0
        this.starLvl = opts.starLvl || 0
        this.quality = opts.quality || 0
        this.cd = opts.cd || 0
        this.cdPer = opts.cdPer || 0
        this.index = opts.index || 0
        this.aSkills = opts.aSkills || []
        this.addBuff = opts.addBuff || 0
        this.addDeBuff = opts.addDeBuff || 0
        this.hurtPer = opts.hurtPer || 0
        this.scritHurtPer = opts.scritHurtPer || 0
        this.bossHurtPer = opts.bossHurtPer || 0
        this.eliteHurtPer = opts.eliteHurtPer || 0  
        this.boss = opts.boss || false
        this.doubleTriggerPer = opts.doubleTriggerPer || 0
        this.mp = opts.mp || 0
        this.killMonsterPer = opts.killMonsterPer || 0
        this.reduceMpPer = opts.reduceMpPer || 0
        this.buffs = opts.buffs || []
        this.buffStack = opts.buffStack || 0
        this.con = opts.con || 0
        this.str = opts.str || 0
        this.will = opts.will || 0  
        this.agile = opts.agile || 0
        this.spirit = opts.spirit || 0
        this.scritRate = opts.scritRate || 0
    }
}